<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>layui</title>
  <meta name="renderer" content="webkit">
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
	<link rel="stylesheet" type="text/css" href="../plugins/layuiadmin/layui/css/layui.css" media="all">
  <!-- 注意：如果你直接复制所有代码到本地，上述css路径需要改成你本地的 -->
</head>
<body>
 
	<blockquote class="layui-elem-quote news_search">
		<div class="layui-inline">
		    <div class="layui-input-inline">
		    	<input value="" id="search" placeholder="请输入关键字" class="layui-input search_input" type="text">
		    </div>
		    <a class="layui-btn search_btn">查询</a>
		</div>
	</blockquote>
 
<table class="layui-hide" id="test" lay-filter="test"></table>

<script type="text/html" id="toolbarDemo">
  <div class="layui-btn-container">
    <button class="layui-btn layui-btn-sm layui-btn-danger" lay-event="delDatas">批量删除</button>
  </div>
</script>
 
<script type="text/html" id="barDemo">
  <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
  <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
</script>
              
          
<script type="text/javascript" src="../plugins/layuiadmin/layui/layui.js"></script>
<!-- 注意：如果你直接复制所有代码到本地，上述js路径需要改成你本地的 --> 
 
<script>
	var $;
	layui.use(['jquery'], function(){ 
	   $ = layui.$;
	});
	var table;
layui.use('table', function(){
  table = layui.table;
  
  table.render({
    elem: '#test'
    ,url:'../adminList.action'
    ,where: {time:new Date().getTime()}
    ,cellMinWidth: 80 //全局定义常规单元格的最小宽度，layui 2.2.1 新增
    ,toolbar: '#toolbarDemo'
    ,title: '部门'
    ,cols: [[
      {type: 'checkbox', fixed: 'left'}
      ,{field:'adId', title:'ID', width:80, fixed: 'left', unresize: true, sort: true}
      ,{field:'name', title:'名称', width:120}
      ,{field:'admintype', title:'账号类型'}
      ,{field:'lastLogin', title:'登录时间'}
      ,{fixed: 'right', title:'操作', toolbar: '#barDemo', width:150}
    ]]
    ,response: {
      statusCode: 200 //重新规定成功的状态码为 200，table 组件默认为 0
    }
    ,parseData: function(res){ //将原始数据解析成 table 组件所规定的数据
    	//console.log(JSON.stringify(res.rows))
    	this.limits=getLimits(res.total);
      return {
        "code": 200, //解析接口状态
        "msg": res.message, //解析提示文本
        "count": res.total, //解析数据长度
        "data": res.rows //解析数据列表
      };
    }
    ,page: true
    ,id:"table1"
  });
  //排序
  table.on('sort(test)', function(obj){
	  table.reload('test', {
	    initSort: obj //记录初始排序，如果不设的话，将无法标记表头的排序状态。 layui 2.1.1 新增参数
	    ,where: { //请求参数（注意：这里面的参数可任意定义，并非下面固定的格式）
	      field: obj.field //排序字段   在接口作为参数字段  field order
	      ,order: obj.type //排序方式   在接口作为参数字段  field order
	    }
	  });
	});
  
  //头工具栏事件
  table.on('toolbar(test)', function(obj){
    var checkStatus = table.checkStatus(obj.config.id);
    //console.log(checkStatus.data)
    switch(obj.event){
      case 'delDatas':
        layer.confirm('确定删除选中行？', function(index){
					layer.close(index);
		      $.ajax({
		      	type:"post",
		      	url:"../adminDeletes.action",
		      	data:{
		      		rowstr:JSON.stringify(checkStatus.data)
		      	},
		      	cache:false,
		      	async:true,
		      	success:function(res){
		      		if(res.flag === 'success'){
		      			layer.msg('删除成功');
		      			table.reload('table1', {where: {time:new Date().getTime()}});
		      		}else{
		      			layer.msg('删除失败')
		      		}
		      	}
		      });
		      //向服务端发送删除指令
		    });
      break;
    };
  });
  //监听工具条
table.on('tool(test)', function(obj){ //注：tool是工具条事件名，test是table原始容器的属性 lay-filter="对应的值"
  var data = obj.data; //获得当前行数据
  var layEvent = obj.event; //获得 lay-event 对应的值（也可以是表头的 event 参数对应的值）
  var tr = obj.tr; //获得当前行 tr 的DOM对象
  if(layEvent === 'detail'){ //查看
    //do somehing
  } else if(layEvent === 'del'){ //删除
    layer.confirm('真的删除行么', function(index){
      layer.close(index);
      $.ajax({
      	type:"post",
      	url:"../adminDelete.action",
      	data:{
      		rowstr:JSON.stringify(obj.data)
      	},
      	async:true,
      	cache:false,
      	success:function(res){
      		//console.log(res)
      		if(res.flag === 'success'){
      			layer.msg('删除成功')
      			table.reload('table1', {where: {time:new Date().getTime()}});
      		}else{
      			layer.msg('删除失败')
      		}
      	}
      });
      //向服务端发送删除指令
    });
  } else if(layEvent === 'edit'){ //编辑
  	newTab('../plan/adminedit.jsp?adId='+data.adId,data.name);
		//parent.openNewTab({
		//	href: "adminedit.jsp?adId="+data.adId,
		//	icon: "",
		//	title: "编辑"+data.adId
	//})
  }
});
});

function newTab(url,tit){
    if(top.layui.index){
        top.layui.index.openTabsPage(url,tit)
    }else{
        window.open(url)
    }
}

document.querySelector(".search_btn").onclick=function(){
	
	//console.log(document.querySelector("#search").value);
	table.reload('table1', {
	  url:'../adminList.action'
	  ,where: {
	  	search:document.querySelector("#search").value
	  } //设定异步数据接口的额外参数
	  //,height: 300
	});
}
function getLimits(total){
	var arr=[10],i=0;
	addLimit();
	function addLimit(){
		if(total>arr[i]){
			var d = arr[i]*2;
			if(total>d && d<100){
				arr.push(d);
				i++;
				addLimit();
			}else{
				arr.push(total);
			}
		}
	}
	return arr;
}
</script>

</body>
</html>